package com.haoze.nurseapp.dao;

import com.haoze.common.mapper.MyMapper;
import com.haoze.nurseapp.model.FileIndexDataEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface NurseFileIndexDataMapper extends MyMapper<FileIndexDataEntity> {
    /**
     * 根据文书ID和退药时间的element_id查询当前文书明细数据
     * @param emrFileId
     * @param varCode
     * @param parentId
     * @return
     */
    FileIndexDataEntity getFileIndexDataInfo(@Param("emrFileId") String emrFileId,@Param("varCode") String varCode,@Param("parentId") String parentId);

    Integer insertInto(@Param("fileIndexDataEntity") FileIndexDataEntity fileIndexDataEntity);

    /**
     * 根据文书ID和退药时间的element_id查询当前文书明细数据
     * @param emrFileId
     * @param varCode
     * @return
     */
    FileIndexDataEntity getFileIndexData(String emrFileId, String varCode);

    /**
     * 根据qrcode获取穿刺工具_标签子数据元文书明细
     * @param qrcode
     * @param nodeId
     * @return
     */
    List<FileIndexDataEntity> queryDataEntitys(@Param("qrcode") String qrcode,@Param("nodeId") String nodeId);

    /**
     *
     * @param qrcode
     * @param nodeId
     * @return
     */
    FileIndexDataEntity queryDataEntity(@Param("qrcode")String qrcode,@Param("nodeId") String nodeId);

    /**
     * 删除需要被替换的数据
     * @param fileIndexDataId
     */
    void delByParentFileIndexDataId(@Param("fileIndexDataId") String fileIndexDataId);

    /**
     * 根据文书ID获取当前文书中对应当前时间最近的一条滴速
     * @param emrFileId
     * @return
     */
    Map<String,String> getDataEntity(String emrFileId);

    /**
     * 根据文书ID获取当前文书中对应的当前时间最近的一条剩余量
     * @param emrFileId
     * @return
     */
    Map<String,String> getSurPlus(String emrFileId);

    /**
     * 获取全部药量
     * @param emrFileId
     * @return
     */
    Map<String,String> getDrugsSum(String emrFileId);


    List<Map<String, Object>> queryFileIndexData(@Param("varCode") String varCode,
                                                 @Param("emrFileId") String emrFileId);

    /**
     * 根据文书ID和数据元ID获取dataValue
     * @param emrFileId
     * @param varValue
     * @return
     */
    Map<String,String> queryString(@Param("emrFileId") String emrFileId,@Param("varValue") String varValue);

    int updateOrdersFileIndex(@Param("fileIndexDataEntity") FileIndexDataEntity fileIndexDataEntity);
}
